
HmJS.register('base', function ($) {

	return {

		option: {
			theme: 'default',
			advancedEffects: false, // Effects that require fast browsers and are cpu intensive.
			standardEffects: true,  // Basic effects that tend to run smoothly.

			path: {
				root: '../', 					// Path to root of other source folders
				source: '{root}Source/', 		// Path to MochaUI source JavaScript
				themes: '{root}Source/Themes/'		// Path to MochaUI Themes
			},

			pluginGroups: {
				'controls': { path: '{root}Source/Controls/', singularName: 'control' },
				'plugins': { path: '{root}Source/Plugins/', singularName: 'plugin' }
			},

			themes: ['Default', 'Charcoal'],

			css: ['{theme}css/core.css'], 			// default list of css files to load, added to requirements of every control and plugin loaded

			defaultJsonProvider: 'json'						// the default json provider chosen for controls that require json and not loadMethod was selected
		},

		abstractMethod: function () {
			throw Error('unimplemented abstract method');
		}

	};

});